#include <climits>
#include <iostream>
#include <vector>
using namespace std;
 
int main()
{
	int n = 0;
	string str;
	cin >> n >> str;
	vector<int> hash(26, 0);
	int sz = str.size();
	for (int i = 0; i < sz; ++i)
	{
		hash[str[i] - 'a']++;
	}
	int maxCnt = 0, maxIndex = 0;
	for (int i = 0; i < 26; ++i) // 先放第一大
	{
		if (hash[i] > maxCnt)
		{
			maxCnt = hash[i];
			maxIndex = i;
		}
	}
	if (maxCnt > (sz + 1) / 2)
		cout << "no";
	else
	{
		cout << "yes" << endl;
		vector<char> res(n);
		int i = 0;
		while (maxCnt--)
		{
			res[i] = (maxIndex + 'a');
			i += 2;
		}
        // cout << maxIndex << endl;
		for (int j = 0; j < 26; ++j)
		{
			if (j != maxIndex && hash[j] != 0) // 找到一个后往后找
			{
                while(hash[j]--)
                {
                    if(i >= n)
                        i = 1;
                    res[i] = j + 'a';
                    i += 2;
                }
			}
		}
		for (auto& e : res)
		{
			cout << e;
		}
        cout << endl;
	}
	return 0;
}